LLVM中的大部分后端都用TableGen语言编写，TableGen是一种特殊的语言，用于生成C++源代码的片段，以避免每个后端都实现类似的代码，并减少源码量，所以了解TableGen很重要。

本章中，将了解以下内容:

\begin{itemize}
\item
了解TableGen语言时，将了解TableGen背后的主要思想

\item
TableGen语言的实验中，将定义自己的TableGen类和记录，并学习TableGen语言的语法

\item
使用TableGen文件生成C++代码中，可以开发自己的TableGen后端

\item
TableGen的缺点
\end{itemize}

本章结束时，能够使用现有的TableGen类来定义自己的记录，了解如何从头创建TableGen类和记录，以及如何开发TableGen后端以生成源码。














